#!/usr/bin/env node
const yargs = require('yargs/yargs');
const { hideBin } = require('yargs/helpers');
const serve = require('koa-static');

// const argv = yargs(hideBin(process.argv)).argv;
// 简单案例
const argv = yargs((process.argv)).argv;

// console.log(argv);
// if(argv.ships && argv.distance<53.5){
//     console.log('distance 小于 53.5');
// }else{
//     console.log('distance 大于 53.5');
// }

// 复杂案例
yargs(hideBin(process.argv)).command('serve [port]', 'start the server', (yargs) => {
    console.log('运行了 serve 命令');
    return yargs().positional('port', {
        describe: 'port to bind on',
        default: 5000
    })
}, (argv) => {
    if (argv.verbose) {
        console.info(`start server on:  ${argv.port}`);
    }
    serve(argv.port)
}).option('verbose', {
    alias: 'v',
    type: 'boolean',
    description: 'Run with verbose logging'
}).argv;

// yargs(hideBin(process.argv))
//     .command('serve [port]', 'start the server', (yargs) => {
//         return yargs
//             .positional('port', {
//                 describe: 'port to bind on',
//                 default: 5000
//             })
//     }, (argv) => {
//         if (argv.verbose) console.info(`start server on :${argv.port}`)
//         serve(argv.port)
//     })
//     .option('verbose', {
//         alias: 'v',
//         type: 'boolean',
//         description: 'Run with verbose logging'
//     })
//     .argv